<?php
defined('IN_PHPCMS') or exit('No permission resources.'); 
/**
 * 点击统计
 */
$db = '';
$db = pc_base::load_model('hits_model');
//add by weifan
if ($_GET['modelid'] && $_GET['id'] && $_GET['catid'] && $_GET['unique_id'])
{
	$views = $dayviews = $weekviews = $monthviews = 0;
	$modelid = intval($_GET['modelid']);
	$id = intval($_GET['id']);
	$catid = intval($_GET['catid']);
	$hitsid = trim(strip_tags($_GET['unique_id']));
	if ($modelid<1 || $catid<1 || empty($hitsid)) exit();
	$model_arr = array();
	$model_arr = getcache('model','commons');
	if (!@array_key_exists($modelid, $model_arr)) exit();
	$site_id = get_siteid();
	$category_arr = array();
	$category_arr = getcache('category_content_'.$site_id, 'commons');
	if (!@array_key_exists($catid, $category_arr)) exit();
	$r = get_count($hitsid);
	if(!$r && isset($_GET['downact']) && $_GET['downact'] == 'down') {
		//不存在，插入
		set_count($hitsid, $catid);
	}
	else 
	{
		@extract($r);
	}
	if(isset($_GET['downact']) && $_GET['downact'] == 'down') {
    	hits($hitsid);
    	exit();
	}
    echo "\$('#{$hitsid}').html('$views');";
    //echo "\$('#todaydowns').html('$dayviews');";
    //echo "\$('#weekdowns').html('$weekviews');";
    //echo "\$('#monthdowns').html('$monthviews');";
    //echo "\$('#hits').html('{$views}');";
    exit();
}
elseif($_GET['modelid'] && $_GET['id']) {
	$model_arr = array();
	$model_arr = getcache('model','commons');
	$modelid = intval($_GET['modelid']);
	$hitsid = 'c-'.$modelid.'-'.intval($_GET['id']);
	$r = get_count($hitsid);
	if(!$r) exit;
    extract($r);
    hits($hitsid);
    echo "\$('#todaydowns').html('$dayviews');";
    echo "\$('#weekdowns').html('$weekviews');";
    echo "\$('#monthdowns').html('$monthviews');";
} elseif($_GET['module'] && $_GET['id']) {
	$module = $_GET['module'];
	if((preg_match('/([^a-z0-9_\-]+)/i',$module))) exit('1');
	$hitsid = $module.'-'.intval($_GET['id']);
	$r = get_count($hitsid);
	if(!$r) exit;
    extract($r);
    hits($hitsid);
}

/**
 * 插入点击量
 * @author weifan
 */
function set_count($hitsid, $catid)
{
	global $db;
	$sql = array('hitsid'=>$hitsid,'catid'=>$catid,'views'=>'1','yesterdayviews'=>'1','dayviews'=>'1','weekviews'=>'1','monthviews'=>'1','updatetime'=>SYS_TIME);
	return $db->insert($sql);
}


/**
 * 获取点击数量
 * @param $hitsid
 */
function get_count($hitsid) {
	global $db;
    $r = $db->get_one(array('hitsid'=>$hitsid));  
    if(!$r) return false;	
	return $r;	
}

/**
 * 点击次数统计
 * @param $contentid
 */
function hits($hitsid) {
	global $db;
	$r = $db->get_one(array('hitsid'=>$hitsid));
	if(!$r) return false;
	$views = $r['views'] + 1;
	$yesterdayviews = (date('Ymd', $r['updatetime']) == date('Ymd', strtotime('-1 day'))) ? $r['dayviews'] : $r['yesterdayviews'];
	$dayviews = (date('Ymd', $r['updatetime']) == date('Ymd', SYS_TIME)) ? ($r['dayviews'] + 1) : 1;
	$weekviews = (date('YW', $r['updatetime']) == date('YW', SYS_TIME)) ? ($r['weekviews'] + 1) : 1;
	$monthviews = (date('Ym', $r['updatetime']) == date('Ym', SYS_TIME)) ? ($r['monthviews'] + 1) : 1;
	$sql = array('views'=>$views,'yesterdayviews'=>$yesterdayviews,'dayviews'=>$dayviews,'weekviews'=>$weekviews,'monthviews'=>$monthviews,'updatetime'=>SYS_TIME);
    return $db->update($sql, array('hitsid'=>$hitsid));
}

?>
$('#hits').html('<?php echo $views?>');